Technical Field
Embodiments of the present disclosure relate to semiconductor devices and, more particularly, to a system-on-chip (SoC) including a multi-core processor and a thread management method thereof.
Discussion of Related Art
The use of mobile devices such as smartphones, digital cameras, MP3 players, and personal digital assistants (PDAs) is rapidly growing in recent years. As the driving of multimedia and throughput of various types of data increase in such mobile devices, adoption of a high-speed processor and a mass storage medium is expanding. Various application programs are driven in a mobile device. In a mobile device, semiconductor devices such as an operation memory (e.g., DRAM), a nonvolatile memory, and an application processor (hereinafter referred to as “AP”) are used to drive various application programs. However, the integration density and driving frequencies of these semiconductor devices are increasing based upon on a demand for high performance in the mobile environment.
In a mobile device, an application processor uses a multi-core processor for providing high performance. Multi-core processors may be classified into a homogeneous multi-core processor and a heterogeneous multi-core processor. A homogeneous multi-core processor may include multi-cores of the same performance or the same size. A heterogeneous multi-core processor includes cores of different sizes or different performances.
Particularly, a heterogeneous multi-core processor may be managed in a switching manner of a high-performance cluster and a low-performance cluster depending on a task load. The heterogeneous multi-core processor may be controlled such that cores of different clusters process a plurality of threads at the same time. However, a manner of simultaneously driving cores of different performances during a specific operation may result in performance deterioration as compared to the cluster switching manner.